﻿using System;
namespace Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik {
    
    
    public partial class MenetluseTeavitus : global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.StandardTeavitus, global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetluseTeavitus {
        
        private global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlus @__menetlus;
        
        private System.Int64? @__asjaLiikKL;
        
        private string @__asjaNR;
        
        private System.Int64? @__asjaObjektID;
        
        private string @__menetluseMenetlevadAsutusedCSV;
        
        private string @__menetluseNR;
        
        private System.Int64? @__menetluseObjektID;
        
        public MenetluseTeavitus() {
        }
        
        /// <summary>
        /// All parameters
        /// </summary>
        public MenetluseTeavitus(global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlus @menetlus, System.Int64? @asjaLiikKL, string @asjaNR, System.Int64? @asjaObjektID, string @menetluseMenetlevadAsutusedCSV, string @menetluseNR, System.Int64? @menetluseObjektID, System.Int64? @objektID, System.DateTime? @algusKP, System.Int64? @teavitamiseEesmarkKL, System.Int64? @isikObjektID, string @isikCSV, System.Int64? @asutusObjektID, string @asutusCSV, System.Collections.Generic.List<global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlus> @menetlused) : 
                base(@objektID, @algusKP, @teavitamiseEesmarkKL, @isikObjektID, @isikCSV, @asutusObjektID, @asutusCSV, @menetlused) {
            this.@__menetlus = @menetlus;
            this.@__asjaLiikKL = @asjaLiikKL;
            this.@__asjaNR = @asjaNR;
            this.@__asjaObjektID = @asjaObjektID;
            this.@__menetluseMenetlevadAsutusedCSV = @menetluseMenetlevadAsutusedCSV;
            this.@__menetluseNR = @menetluseNR;
            this.@__menetluseObjektID = @menetluseObjektID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        protected MenetluseTeavitus(IMenetluseTeavitus @menetluseTeavitus) : 
                base(@menetluseTeavitus.ObjektID, @menetluseTeavitus.AlgusKP, @menetluseTeavitus.TeavitamiseEesmarkKL, @menetluseTeavitus.IsikObjektID, @menetluseTeavitus.IsikCSV, @menetluseTeavitus.AsutusObjektID, @menetluseTeavitus.AsutusCSV, @menetluseTeavitus.Menetlused) {
            this.@__menetlus = @menetluseTeavitus.Menetlus;
            this.@__asjaLiikKL = @menetluseTeavitus.AsjaLiikKL;
            this.@__asjaNR = @menetluseTeavitus.AsjaNR;
            this.@__asjaObjektID = @menetluseTeavitus.AsjaObjektID;
            this.@__menetluseMenetlevadAsutusedCSV = @menetluseTeavitus.MenetluseMenetlevadAsutusedCSV;
            this.@__menetluseNR = @menetluseTeavitus.MenetluseNR;
            this.@__menetluseObjektID = @menetluseTeavitus.MenetluseObjektID;
        }
        
        /// <summary>
        /// Copy Constructor
        /// </summary>
        public MenetluseTeavitus(IStandardTeavitus @standardTeavitus) : 
                base(@standardTeavitus) {
        }
        
        public virtual global::Producers.Etoimik.Xtee.Riik.Ee.Producer.Etoimik.IMenetlus Menetlus {
            get {
                return this.@__menetlus;
            }
            set {
                this.@__menetlus = value;
            }
        }
        
        public virtual System.Int64? AsjaLiikKL {
            get {
                return this.@__asjaLiikKL;
            }
            set {
                this.@__asjaLiikKL = value;
            }
        }
        
        public virtual string AsjaNR {
            get {
                return this.@__asjaNR;
            }
            set {
                this.@__asjaNR = value;
            }
        }
        
        public virtual System.Int64? AsjaObjektID {
            get {
                return this.@__asjaObjektID;
            }
            set {
                this.@__asjaObjektID = value;
            }
        }
        
        public virtual string MenetluseMenetlevadAsutusedCSV {
            get {
                return this.@__menetluseMenetlevadAsutusedCSV;
            }
            set {
                this.@__menetluseMenetlevadAsutusedCSV = value;
            }
        }
        
        public virtual string MenetluseNR {
            get {
                return this.@__menetluseNR;
            }
            set {
                this.@__menetluseNR = value;
            }
        }
        
        public virtual System.Int64? MenetluseObjektID {
            get {
                return this.@__menetluseObjektID;
            }
            set {
                this.@__menetluseObjektID = value;
            }
        }
    }
}
